home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
oper_sys
/
oasis
/
oasisegs.lha
/
egs
/
lips.lisp
< prev
next >
Wrap
Lisp/Scheme
|
1992-04-23
|
649b
|
21 lines
(proclaim '(function run (fixnum) nil))
(proclaim '(function rev () list))
(proclaim '(function nrev (list) list))
(proclaim '(function app (list list) list))
(defun run (n)
(declare (type fixnum n))
(when (> n 0) (rev) (run (- n 1))) )
(defun rev () (nrev '(1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0) ))
(defun nrev (xs)
(declare (type list xs))
(if (null xs) nil (app (nrev (cdr xs)) (cons (car xs) nil))) )
(defun app (xs ys)
(declare (type list xs)
(type list ys))
(if (null xs) ys (cons (car xs) (app (cdr xs) ys))) )